iT邦幫忙

2024 iThome 鐵人賽

DAY 11
0
AI/ ML & Data

使用 jq 處理資料系列 第 11

Day11: jq 線上工具 jqplay

  • 分享至 

  • xImage
  •  

昨天講到使用 jq filter 建立新的物件、陣列,最後有用到 jqplay 這個工具,今天就來認識一下這個工具吧!

參考下圖:

https://ithelp.ithome.com.tw/upload/images/20240925/20078389oj6BUxUUVD.png

  1. INPUT : 輸入的資料
  • HTTP: 輸入回傳 JSON 的 HTTP API URL,就會像 curl {URL} 一樣,取回資料並傳給接下來的 jq filter 處理。例如我們最早用到的 curl https://jsonplaceholder.typicode.com/todos/1
  • JSON: 直接輸入 JSON 物件或陣列,就會像讀取 todo.json 一樣,傳給接下來的 jq filter 處理。如上面這張示意圖
  1. jq filter: jq 主要程式,輸入我們一直在學習的 jq filter 語法。

  2. OUTPUT: 輸出的結果,這邊可以即時地看到結果。

  3. Options: jq 讀取資料的部分選項

  • -c Compact output: 壓縮結果為一行
  • -n Null input: 不讀取輸入的資料
  • -R Raw input: 將讀取的資料視為一般文字,不會解析成JSON
  • -r Raw Output: 將輸出的資料視為一般文字,不會解析成JSON,外層如果是字串不會加上引號
  • -s Slurp: 將資料讀取成陣列
  • -S Sort keys: 排序鍵值

以下用 TODO 搭配. identity operator (恆等運算子)作使用各別參數的示範:

選項 縮圖
-c https://ithelp.ithome.com.tw/upload/images/20240925/20078389plvsJd9nmK.jpg
-n https://ithelp.ithome.com.tw/upload/images/20240925/20078389uko9cJaZDL.jpg
-R https://ithelp.ithome.com.tw/upload/images/20240925/20078389qjHd51BNiR.jpg
-r https://ithelp.ithome.com.tw/upload/images/20240925/20078389lOg2WWKZET.jpg
-s https://ithelp.ithome.com.tw/upload/images/20240925/20078389gJFLbGnLqJ.jpg
-S https://ithelp.ithome.com.tw/upload/images/20240925/200783893YrlX5u5rZ.jpg

-r 的效果用物件看不出來,以下再用 TODO 搭配.title 取文字屬性作使用-r 參數的示範:

選項 縮圖
-r https://ithelp.ithome.com.tw/upload/images/20240925/20078389mjyxytMOGl.jpg

結論

今天大概的介紹了jq play 這個線上工具的使用方法,這個工具輕巧便利、回應快速,對學習和嘗試寫 jq filter 很有幫助。不過在我學會基本 jq filter 之前,我不知道怎麼使用它,因此也就到會用之後才介紹這個工具囉。接下來也可以用 jq play 做練習囉!感謝今天也很認真的自己~繼續學習吧!加油!


上一篇
Day10: jq filter 建立新物件/陣列
下一篇
Day12: 字串變數置換 (String interpolation)
系列文
使用 jq 處理資料30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言